home *** CD-ROM | disk | FTP | other *** search
/ BCI NET / BCI NET Dec 94.iso / archives / textfiles / ansiguide112.lha / ANSI.TXT < prev    next >
Encoding:
Text File  |  1994-09-01  |  42.0 KB  |  1,000 lines

  1.  
  2. ANSI/SkyPix Documentation v1.12 - 01 Sep 1994
  3.  
  4.  
  5.     »»»»»»»     »»»»    »»»»»   »»»»»»»»»»»  »»»»»         ///
  6.    »»»   »»»     »»»»    »»»   »»»      »»»   »»»         /// Compiled by:
  7.   »»»     »»»    »»»»»   »»»   »»»            »»»        ///
  8.   »»»     »»»    »»»»»»  »»»    »»»»»»»»»»    »»»       ///       ^ ^
  9.   »»»»»»»»»»»    »»» »»» »»»            »»»   »»»      ///       \// ^
  10.   »»»     »»»    »»»  »»»»»»            »»»   »»»     ///       --  /^
  11.   »»»     »»»    »»»   »»»»»   »»»      »»»   »»»    ///         mm(/
  12.  »»»»     »»»»  »»»»»   »»»»»  »»»»»»»»»»»   »»»»»  ///     Spiny Norman  
  13.  
  14.   ®®®®®®®®®®®  ®®®®                         ®®®®®®®®®®    ®®®
  15.  ®®®      ®®®   ®®®                          ®®®    ®®®
  16.  ®®®            ®®®  ®®®®  ®®®®   ®®®        ®®®    ®®®  ®®®®®  ®®®®   ®®®®
  17.   ®®®®®®®®®®    ®®® ®®®     ®®®   ®®®        ®®®    ®®®   ®®®     ®®® ®®®
  18.           ®®®   ®®®®®®      ®®®   ®®®        ®®®®®®®®®    ®®®      ®®®®®
  19.           ®®®   ®®® ®®®     ®®®   ®®®        ®®®          ®®®     ®®®®®®®
  20.  ®®®      ®®®   ®®®  ®®®    ®®®   ®®®        ®®®          ®®®    ®®®   ®®®
  21.  ®®®®®®®®®®®   ®®®®   ®®®    ®®®®®®®®       ®®®®®        ®®®®®  ®®®     ®®®
  22.                                   ®®®
  23.                                   ®®®               v 1 . 1 2
  24.                             ®®®®®®®®
  25.  
  26.             SOME USEFUL INFORMATION TO HELP YOU DEAL WITH IT...
  27.  
  28.                   Original text file       - 03 Jan 1992
  29.                   Edited and Revised       - 11 Jan 1993
  30.                   First AmigaGuide version - 01 Jan 1994
  31.  
  32.       COMING SOON: C-Net MCI for Morons, the Complete AmigaGuide Dox
  33.  
  34.                             O P E N   M E ! !                             
  35.  
  36. Table of Contents
  37.  
  38. ######### ######### ####    ## ####### ######## ####    ## ####### ########
  39. ##     ## ##    ### ## ##   ##   ##    ###      ## ##   ##   ##    ##
  40. ##        ##    ### ##  ##  ##   ##    #######  ##  ##  ##   ##    ########
  41. ###       ##     ## ###  ## ##   ###   ##       ###  ## ##   ###        ###
  42. ###    ## ##     ## ###   ####   ###   ##       ###   ####   ###   ##   ###
  43. ######### ######### ###    ###   ###   ######## ###    ###   ###   ########
  44.  
  45.       Introduction       Words of philosophical enlightenment
  46.  ANSI Command Structure  What is this ANSI thing anyway?
  47.      ANSI Commands       How to make ANSI do household chores
  48.       'Smart' Code       Optimising commands to save space and time
  49.     SkyPix Commands      The SkyPix ANSI subset as defined by Michael Cox
  50.  IBM Graphic Characters  Those little squigglies and how to generate them
  51.  Programmes to Look For  What you need to get started and where to find it
  52.   Where to Contact Me    Where I can be reached (usually)
  53.  
  54. A Few Tiresome Words From Yours Truly
  55.  
  56.         ####
  57.         ##
  58.        ##  ==============================================================
  59.       ##   N T R O D U C T I O N
  60.      ##  ================================================================
  61.     ##
  62.   ####
  63.  
  64. When this document was first released almost two years ago, the tide of
  65. SysOps converting their BBS's from Commodore to Amiga was reaching its
  66. peak.  At that time, SkyLine 1.3 was the hottest Amiga BBS around (because
  67. of its unique SkyPix protocol.)  Michael Cox, however, decided to release
  68. Version 2.0 without SkyPix implementation, and some would say that the
  69. decline of SkyLine's popularity began there.  Fortunately for SkyPix fans
  70. such as myself, however, C-Net Amiga now supports the protocol, providing
  71. a viable outlet for it until a better graphic-oriented protocol becomes
  72. ubiquitous in the Amiga market (such as RIP for instance.)
  73.  
  74. TO C-NET USERS: the ANSI portion of this document is basically useless to
  75. you (other than as a technical reference), since C-Net's [M]essage
  76. [C]ommand [I]nterpreter mirrors all of the standard ANSI commands.
  77. However, SkyPix commands are not covered by MCI, and BBS artists must still
  78. enter them the old-fashioned way (or with SKYPAINT.)  As of version 2.63,
  79. the only way to use ANSI/SkyPix while on-line is through the line editor
  80. (the visual editor will not respond to ESC sequences for some reason, but
  81. this may have been fixed in CNet/3.)  Also, you must press ESC twice for
  82. the code to register with the editor (the ESC code will show as a
  83. tilde ~.)
  84.  
  85. TO SKYLINE 1.3 USERS: this document contains commands to which SkyLine's
  86. built-in editor should (I said SHOULD) respond, and since SkyLine has no
  87. equivalent of MCI, these Escape-commands provide the only method of
  88. changing colour and adding other various effects from within the BBS.
  89.  
  90.  
  91. OK, BUT JUST EXACTLY WHAT IS ANSI?
  92. ==================================
  93.  
  94. ANSI is actually an organisation, the American National Standards
  95. Institute, which back in the stone ages decided to introduce
  96. hardware/software standards to make the job of persons in the computer
  97. industry easier.  Originally, the ANSI protocol governed printer-to-
  98. computer communications since monitors were rare at that time.
  99. Eventually, however, someone invented the CRT, and ANSI seemed a logical
  100. choice to govern text displays on this new device.  When MS-DOS came into
  101. being in the 1970's, MicroSoft picked up on the ANSI standard (implemented
  102. in ANSI.SYS) to allow non-graphics-capable machines (this was before CGA)
  103. to generate pseudo-graphic displays using text and ANSI colour changes.
  104. Then came the 80's and the era of the modem, and some clever programmer
  105. grabbed the standard once again to use for data terminal emulations,
  106. providing SysOps and users with on-line "pictures", colour changes, and
  107. cursor movement which made BBS'ing more interesting.  The word "ANSI" can
  108. refer to a variety of standards (such as ANSI C, for instance), but for
  109. now I will refer to only the data terminal implementation.
  110.  
  111. The ANSI protocol is functionally similar to Commodore's Pet ASCII in that
  112. each command is implemented by a series of weird characters that no one in
  113. their right mind would ever type by mistake.  Also like PetSCII, it is
  114. designed so that terminal and host should (ideally) respond identically
  115. to the same command (this is rarely the case, however.)  Since all 16-
  116. colour ANSI terminals (including ones on the Amiga) are designed to
  117. emulate the standard ANSI palette, it is possible to view the
  118. same graphics using vastly different machines.
  119.  
  120.         Next Section                                Table of Contents  
  121.  
  122. How The Stuff's Put Together
  123.  
  124.         ####
  125.       ##
  126.     ##     ==============================================================
  127.    ##      O M M A N D   S T R U C T U R E
  128.   ##     ================================================================
  129.   ##
  130.   ####
  131.  
  132. Standard ANSI Commands are structured as Introducer + Command + Terminator
  133. where the Introducer is almost always the ESC [ key sequence and the
  134. Terminator is generally a letter (ANSI) or an exclamation point (SkyPix.)
  135.  
  136. Confused yet?
  137.  
  138. The ";" key can also be used within a complex command to join 2 command
  139. strings together.  I know this sounds awfully naughty and complex, but
  140. just study the command charts in the following section and I think you'll
  141. see where I'm driving.  The key sequences are spelled out key-for-key (they
  142. must be entered exactly.)
  143.  
  144.         Next Section                                Table of Contents  
  145.  
  146. The Section You've All Been Waiting For
  147.  
  148.          ####
  149.        ##  ##
  150.       ##  ## ============================================================
  151.      ######  N S I   C O M M A N D S
  152.     ##  ## ==============================================================
  153.    ##  ##
  154.   ##  ##
  155.  
  156. NOTES:
  157. ------
  158. · [ ]  -  refers to optional parts of a command.
  159.  
  160. · '[n]' or '[m]'  -  always decimal numbers, containing one or more ASCII
  161.   digits to express their value.
  162.  
  163. · Where '[n]' occurs in a command and the value of 'n' is not explicitly
  164.   defined, it usually defaults to 1.
  165.  
  166. · 'ESC'  -  an ESCape key press (HEX $1B or DECIMAL 27) - Use CTRL-[ if you
  167.   don't have an ESCape key (Commodore 64's, for instance) - in some
  168.   implementations, $DB also works as a command introducer, but ESC is much
  169.   more widely-used
  170.  
  171. · Commands involving upper or lower-case letters are always case-sensitive.
  172.  
  173. · Where applicable, the equivalent C-Net MCI commands (version 2.0 and
  174.   beyond) have been included for reference.
  175.  
  176. · All sequences should be entered WITHOUT SPACES - the spaces are included
  177.   for readability only.
  178.  
  179.  
  180.  Cursor Positioning  Making your screen do the tango
  181.       Text F/X       Italics, Boldface, and international intrigue
  182.   Changing Colours   Monochrome users may skip this part
  183.  
  184.         Next Section                                Table of Contents  
  185.  
  186. Cursor Positioning Commands, or Watch the Bouncing Letters
  187.  
  188. CURSOR POSITIONING COMMANDS
  189. ===========================
  190.  
  191. Backspace                                           Left Arrow Key (CTRL-H)
  192. Tab                                                 Tab Key        (CTRL-I)
  193. Line Feed (Down One Line)                           Down Arrow Key (CTRL-J)
  194. Up (Up One Line)                                    Up Arrow Key   (CTRL-K)
  195. Clear Screen (Form Feed) [MCI \f1]                  CTRL-L
  196. Carriage Return (Move To First Column)              Return Key     (CTRL-M)
  197.  
  198. Insert n Characters [MCI \-n]                       ESC [ [n] @@
  199. Cursor Up n Lines [MCI \^n]                         ESC [ [n] A
  200. Cursor Down n Lines [MCI \!n]                       ESC [ [n] B
  201. Cursor Forward n Spaces [MCI \>n]                   ESC [ [n] C
  202. Cursor Backward n Spaces [MCI \<n]                  ESC [ [n] D
  203. Cursor Down n Lines And To Column 1                 ESC [ [n] E
  204.    (Multiple Carriage Return) [MCI \nn]
  205. Cursor Up n Lines And To Column 1                   ESC [ [n] F
  206.    (Opposite Effect Of Above)
  207. Cursor to the beginning of the current line         ESC [     G
  208.  
  209. Cursor To Row n, Column m [MCI \f0\!n\>m]           ESC [ [n] ; [m] H
  210.  
  211. Erase To End Of Display                             ESC [ J
  212. Erase To End Of Line                                ESC [ K
  213. Insert Line Above Current Line                      ESC [ L
  214. Delete Current Line                                 ESC [ M
  215.  
  216. Delete n Chars From Under Cursor Forward            ESC [ [n] P
  217. Scroll Display Up n Lines                           ESC [ [n] S
  218. Scroll Display Down n Lines                         ESC [ [n] T
  219.  
  220. Set Carriage Return Mode (What Is Transmitted
  221.  Whenever You Hit RETURN)
  222.  
  223.    RETURN = Line Feed + Carriage Return             ESC [ 20 h
  224.    RETURN = Carriage Return Only                    ESC [ 20 l
  225.  
  226.       Next Sub-Section     'ANSI Commands' Menu     Table of Contents  
  227.  
  228. Text F/X, or Emphasis Made Easy
  229.  
  230. TEXT F/X
  231. ========
  232.  
  233. Normal Display (clear all F/X)                                    ESC [ 0 m
  234.  
  235.   (turns off reverse, brightness, and boldface; sets text and background to
  236.   default colours.  In SkyPix, this will also reset the font to Topaz-8.)
  237. ---------------------------------------------------------------------------
  238.  
  239. Activate Bright Colours (STANDARD ANSI ONLY)                      ESC [ 1 m
  240.  
  241.   (forces the next colour change to use the second 8 colours instead of
  242.   the first.  This command is ignored in SkyPix mode.)
  243. ---------------------------------------------------------------------------
  244.  
  245. Activate Italics (STANDARD ANSI ONLY)                             ESC [ 3 m
  246.  
  247.   (This only worked on a few terminals I tried.)
  248. ---------------------------------------------------------------------------
  249.  
  250. Activate Boldface (STANDARD ANSI ONLY) [MCI \o1]                  ESC [ 5 m
  251.  
  252.   (This command is also ignored in SkyPix mode.)
  253. ---------------------------------------------------------------------------
  254.  
  255. Reverse Display [MCI \r1]                                         ESC [ 7 m
  256.  
  257.   (interchanges the background and foreground colours.)
  258. ---------------------------------------------------------------------------
  259.  
  260. FLASHING TEXT AND OTHER STUFF
  261. =============================
  262.  
  263. Many of the above commands are dependent upon the terminal used.  For
  264. instance, on many IBM terminals Boldface text (ESC [ 5 m) appears
  265. instead as flashing (blinking) characters.  On other terminals, the
  266. (ESC [ 1 m) command activates flashing text instead of turning on bright
  267. colours (TERM, for instance, uses flashing text to represent the second
  268. 8 colours on 8-colour (3 bit-plane) screens.)  Still others represent the
  269. second 8 colours by Boldface text.  You will need to experiment to figure
  270. out how your terminal implements each of the above commands.
  271.  
  272.       Next Sub-Section     'ANSI Commands' Menu     Table of Contents  
  273.  
  274. Changing Colours, or Chartreuse Your Way to Social Ridicule
  275.  
  276. CHANGING COLOURS
  277. ================
  278.  
  279. NOTES:
  280. ------
  281. · If Reverse Display is activated, the foreground colour becomes the
  282.   background colour
  283.  
  284. · In SkyPix mode, the first 8 colours can be accessed with standard ANSI
  285.   commands (to allow compatibility with ANSI screens), however the second
  286.   8 SkyPix colours can only be accessed by changing the SkyPix Pen Colour,
  287.   which is discussed later in this text.
  288.  
  289. · Only the first 8 colours may be used as a background.
  290.  
  291. · The foreground and background colours can be mixed and matched to achieve
  292.   128 total colour combinations.
  293.  
  294.  
  295. TEXT (FOREGROUND) COLOUR  [MCI \cn]
  296. ===================================
  297.  
  298.          DARK (ESC [ 0 m)   BRIGHT (ESC [ 1 m)   SKYPIX  
  299.          ----------------   ------------------   ------
  300.    0  -  Black              Dark Grey            Black           ESC [ 30 m
  301.    1  -  Red                Bright Red           Bright Red      ESC [ 31 m
  302.    2  -  Green              Bright Green         Bright Green    ESC [ 32 m
  303.    3  -  Orange             Yellow               Yellow          ESC [ 33 m
  304.    4  -  Dark Blue          Bright Blue          Dark Blue       ESC [ 34 m
  305.    5  -  Violet             Bright Violet        Violet          ESC [ 35 m
  306.    6  -  Cyan               Bright Cyan          Medium Blue     ESC [ 36 m
  307.  * 7  -  Light Grey         White                White           ESC [ 37 m
  308.  
  309.    *  =  default colour
  310.  
  311.  
  312. BACKGROUND COLOUR [MCI \zn]
  313. ===========================
  314.  
  315.          DARK (ESC [ 0 m)   BRIGHT (ESC [ 1 m)   SKYPIX  
  316.          ----------------   ------------------   ------
  317.  * 0  -  Black              N/A                  Black           ESC [ 40 m
  318.    1  -  Red                N/A                  Bright Red      ESC [ 41 m
  319.    2  -  Green              N/A                  Bright Green    ESC [ 42 m
  320.    3  -  Orange             N/A                  Yellow          ESC [ 43 m
  321.    4  -  Dark Blue          N/A                  Dark Blue       ESC [ 44 m
  322.    5  -  Violet             N/A                  Violet          ESC [ 45 m
  323.    6  -  Cyan               N/A                  Medium Blue     ESC [ 46 m
  324.    7  -  Light Grey         N/A                  White           ESC [ 47 m
  325.  
  326.    *  =  default colour
  327.  
  328.  
  329. AMIGA IMPLEMENTATIONS
  330. =====================
  331.  
  332. For Amiga terminals, the accepted standard ANSI palette (which most closely
  333. approximates the original CGA text colours) is as follows:
  334.  
  335.         R   G   B    COLOUR          |        R   G   B    COLOUR
  336.   -----------------------------------+-----------------------------------
  337.    0 =  00  00  00   Black           |   8 =  06  06  06   Dark Grey
  338.    1 =  10  00  00   Red             |   9 =  15  00  00   Bright Red
  339.    2 =  00  10  00   Green           |  10 =  00  15  00   Bright Green
  340.    3 =  10  06  00   Orange          |  11 =  15  15  00   Yellow
  341.    4 =  00  00  10   Dark Blue       |  12 =  00  00  15   Bright Blue
  342.    5 =  10  00  10   Violet          |  13 =  15  00  15   Bright Violet
  343.    6 =  00  10  10   Cyan            |  14 =  00  15  00   Bright Cyan
  344.    7 =  11  11  11   Light Grey      |  15 =  15  15  15   White
  345.  
  346.         Next Section       'ANSI Commands' Menu     Table of Contents  
  347.  
  348. 'Smart' Code and What it Can Do For Your Social Life
  349.  
  350.         ####
  351.       ##  ##
  352.      ##     =============================================================
  353.     ## ###  E N E R A T I N G   ' S M A R T '   C O D E
  354.    ##  ## ===============================================================
  355.   ##  ##
  356.   #####
  357.  
  358. Often in generating long ANSI screens with many colour changes, it is
  359. important to consider the time that the screen will take to display over
  360. the modem (especially at 2400 baud.)  Programmes like BBS-DRAW will
  361. automatically generate 'smart' ANSI code which transmits in the least
  362. amount of time possible, but generating such code by hand takes a little
  363. bit of ingenuity on the part of the BBS artist.
  364.  
  365. The first thing to bear in mind when generating 'smart' code is that any
  366. two (or more) ANSI codes which have the same command terminator may be
  367. combined into a single command.
  368.  
  369. Example:  To set the text to bright cyan and the background to violet on an
  370.           ANSI screen,
  371.  
  372. either enter     ESC [ 1 m    then    ESC [ 36 m    then    ESC [ 45 m
  373.     or enter     ESC [ 1; 36 ; 45 m
  374.  
  375. where the ; is the division character in the combined command, and the "m"
  376. is the common terminator of the three combined commands.  As you can see,
  377. the second, 'optimised,' code contains four fewer characters than the first
  378. (those characters can add up after a while.)
  379.  
  380. Another thing to consider in optimising your code is that colour,
  381. background, and text F/X changes remain in effect until they are removed
  382. in some way (by another change or by resetting to defaults.)  So, if you
  383. wanted a whole passage of text to have a bright purple foreground but
  384. wanted to change backgrounds in the middle, it would only be necessary to
  385. enter something such as:
  386.  
  387.   ESC [ 1 ; 35 ; 43 m This is a test of the
  388.   ESC [ 44 m Emergency Broadcast System.
  389.  
  390. instead of entering
  391.  
  392.   ESC [ 1 ; 35 ; 43 m This is a test of the
  393.   ESC [ 1 ; 35 ; 44 m Emergency Broadcast System
  394.  
  395. However, if for some reason you wanted the text of "Emergency Broadcast
  396. System" to appear in dark purple instead of bright purple, you would need
  397. to specify a longer command:
  398.  
  399.   ESC [ 1 ; 35 ; 43 m This is a test of the
  400.   ESC [ 0 ; 35 ; 44 m Emergency Broadcast System
  401.  
  402. This is necessary since ESC [ 0 m not only turns off brightness but resets
  403. the colour and background as well.
  404.  
  405.  
  406. COMPLEX DICE
  407. ============
  408.  
  409. OK, let's take a quantum leap here.  Let's say you wanted to clear the
  410. screen, jump down 14 lines, jump over 43 columns, change the text colour to
  411. dark red, change the background colour to yellow, and then make your
  412. machine quote Monty Python.
  413.  
  414.    CTRL-L                      clears the display
  415.    ESC [ 14 B                  jumps down 14 lines
  416.    ESC [ 43 C                  jumps over 43 lines
  417.    ESC [ 7 ; 1 ; 33 ; 41 m     the only way to use a bright colour as a
  418.                                background is through Reverse Mode
  419.  
  420.    type "I didn't expect a kind of Spanish Inquisition!"
  421.  
  422.         Next Section                                Table of Contents  
  423.  
  424. Extremely Silly Reference
  425.  
  426. NOBODY expects the Spanish Inquisition!  Our chief weapon is surprise...
  427. surprise and fear... fear and surprise....  Our two weapons are fear and
  428. surprise... and ruthless efficiency...  Our THREE weapons are fear,
  429. surprise, and ruthless efficiency... and an almost fanatical devotion to
  430. the Pope...  Our FOUR... no... AMONGST our weapons...  Amongst our
  431. weaponry... are such elements as fear, surprise...  I'll come in again.
  432.  
  433.  Jane! Stop This Crazy Thing! 
  434.  
  435. SkyPix Commands, or Cox's Folly
  436.  
  437.         ####
  438.       ##  ##
  439.      ###    =============================================================
  440.      ####   K Y P I X   C O M M A N D S
  441.       ### ===============================================================
  442.   ##  ##
  443.   ####
  444.  
  445. SkyPix is defined as a sub-set of the ANSI standard, and in fact most ANSI
  446. commands have the same effect in SkyPix mode.  There are however several
  447. SkyPix-specific commands (each followed with a characteristic "!" [bang]
  448. terminator) which can only be used from a terminal equipped to emulate the
  449. SkyPix protocol (all 2 of 'em ;)
  450.  
  451. NOTES:
  452. ------
  453. · All SkyPix graphics are implemented on a default screen of 640x200
  454.   (8 colours) with the default palette described below (unless the palette
  455.   or number of number of bitplanes is changed.)
  456.  
  457. · All sequences should be entered WITHOUT SPACES - the spaces are included
  458.   for readability only.
  459.  
  460. Commands:
  461.  1 - SET PIXEL            9 - PLAY SAMPLE         16 - XMODEM TRANSFER    
  462.  2 - DRAW LINE           10 - SET FONT            17 - SET DISPLAY MODE   
  463.  3 - AREA FILL           11 - NEW PALETTE         18 - SET PEN B COLOUR   
  464.  4 - RECTANGLE FILL      12 - RESET PALETTE       19 - POSITION CURSOR    
  465.  5 - ELLIPSE             13 - FILLED ELLIPSE      20 - (NOT IMPLEMENTED)
  466.  6 - GRAB BRUSH          14 - DELAY (PAUSE)       21 - CONTROLLER RETURN  
  467.  7 - USE BRUSH (BLIT)    15 - SET PEN A COLOUR    22 - DEFINE GADGET      
  468.  8 - MOVE PEN           
  469.  
  470.         Next Section                                Table of Contents  
  471.  
  472. Command #1
  473.  
  474. 1 - SET PIXEL                                             ESC [ 1 ; x ; y !
  475.  
  476.     (Sets the pixel at the specified X and Y coordinates to whatever colour
  477.     is in Pen A)
  478.  
  479.         Next Command       'SkyPix Commands' Menu     Table of Contents  
  480.  
  481. Command #2
  482.  
  483. 2 - DRAW LINE                                             ESC [ 2 ; x ; y !
  484.  
  485.     (Draws a line in the current A pen colour from the existing pen
  486.     position to the point X,Y)
  487.  
  488.         Next Command       'SkyPix Commands' Menu     Table of Contents  
  489.  
  490. Command #3
  491.  
  492. 3 - AREA FILL                                         ESC [ 3 ; m ; x ; y !
  493.  
  494.     (Floods, in mode m, the area beginning at X,Y)
  495.  
  496.         Next Command       'SkyPix Commands' Menu     Table of Contents  
  497.  
  498. Command #4
  499.  
  500. 4 - RECTANGLE FILL                            ESC [ 4 ; x1 ; y1 ; x2 ; y2 !
  501.  
  502.     (Draws a filled rectangle in the current colour.  Numeric parameters
  503.     are the top left X and Y coordinates followed by the lower right X and
  504.     Y coordinates)
  505.  
  506.         Next Command       'SkyPix Commands' Menu     Table of Contents  
  507.  
  508. Command #5
  509.  
  510. 5 - ELLIPSE                                       ESC [ 5 ; x ; y ; a ; b !
  511.  
  512.     (Draws Ellipse with center at X,Y; major [horizontal] axis A pixels,
  513.     and minor [vertical] axis B pixels)
  514.  
  515.         Next Command       'SkyPix Commands' Menu     Table of Contents  
  516.  
  517. Command #6
  518.  
  519. 6 - GRAB BRUSH                                  ESC [ 6 ; x1 ; y1 ; a ; b !
  520.  
  521.     (Stores a piece of the screen as a brush in memory.  From there it will
  522.     behave exactly like a brush that has been received remotely.  X1 and Y1
  523.     define the starting point, A the width and B the height)
  524.  
  525.         Next Command       'SkyPix Commands' Menu     Table of Contents  
  526.  
  527. Command #7
  528.  
  529. 7 - USE BRUSH (BLIT)              ESC [ 7 ; a ; b ; c ; d ; e ; f ; g ; h !
  530.  
  531.     A = upper-left X coord. of the source bitmap
  532.     B = upper-left Y coord. of the source bitmap
  533.  
  534.     The above two will usually be 0.  HOWEVER, you can use these to blit
  535.     parts of a brush to the screen.
  536.  
  537.     C = upper-left X coord. of the destination (the screen X coord.)
  538.     D = upper-left Y coord. of the destination (the screen Y coord.)
  539.     E = horizontal (X) size of brush
  540.     F = vertical (Y) size of brush
  541.     G = MINTERM to be supplied to the blitter (commonly 192)
  542.     H = MASK to be supplied to the blitter (commonly 255)
  543.  
  544.     The above commands blit what is in the brush buffer (following a
  545.     CRC Transfer or a GRAB BRUSH command) - if no brush is found, the
  546.     command aborts.
  547.  
  548.         Next Command       'SkyPix Commands' Menu     Table of Contents  
  549.  
  550. Command #8
  551.  
  552. 8 - MOVE PEN                                              ESC [ 8 ; x ; y !
  553.  
  554.     (Move the drawing pen to X,Y - NOT the cursor)
  555.  
  556.         Next Command       'SkyPix Commands' Menu     Table of Contents  
  557.  
  558. Command #9
  559.  
  560. 9 - PLAY SAMPLE                                   ESC [ 9 ; a ; b ; c ; d !
  561.  
  562.     (Plays a simple sample.  A is the "speed" of the sample, B is the
  563.     starting point in bytes, C is the ending point in bytes, and D is the
  564.     number of loops to perform)
  565.  
  566.     NOTE: Parameters A-C are not yet implemented.
  567.  
  568.     SPINY'S NOTE: As of C-Net version 2.63, SkySound is not yet
  569.     implemented.  Hopefully it will be added by the developers in the
  570.     future.
  571.  
  572.         Next Command       'SkyPix Commands' Menu     Table of Contents  
  573.  
  574. Command #10
  575.  
  576. 10- SET FONT                                 ESC [ 10 ; y ! fontname.font !
  577.  
  578.     (Y is the size of the font, and fontname is the name of the font - the
  579.     font must be in the fonts: directory of both the BBS and the Remote
  580.     user for this command to work!)
  581.  
  582.     SPINY'S NOTE: It's wise to stick to just the basic 7 Workbench fonts,
  583.     since you know everyone will have them available on their system disk.
  584.  
  585.         Next Command       'SkyPix Commands' Menu     Table of Contents  
  586.  
  587. Command #11
  588.  
  589. 11- NEW PALETTE                 ESC [ 11 ; c1 ; c2 ; c3 ; ... ; c15 ; c16 !
  590.  
  591.     Sets the palette to the sixteen colours C1-C16 [you must enter all 16
  592.     colours even if you are just in 8-colour mode!]  The parameters C1-C16
  593.     are decimal numbers arrived at in the following way:
  594.  
  595.     Take a grey, for instance, whose R-G-B value is 12-12-12.  Then convert
  596.     that to C-C-C (since 12 is hex $0C).  Now take the hex number CCC and
  597.     convert back into Decimal, which gives you 3276.
  598.  
  599.     NOTE: Unless you are a massochist, I'd suggest using SKYPAINT since it
  600.     does all of the above automatically.  Even if you just need to set the
  601.     palette, load up SKYPAINT and begin recording, go to the palette screen
  602.     and set it to what you want, then end recording.  You can then look at
  603.     the tiny file you created and tell what ESC [ 11 command is needed in
  604.     your final project.
  605.  
  606.         Next Command       'SkyPix Commands' Menu     Table of Contents  
  607.  
  608. Command #12
  609.  
  610. 12- RESET PALETTE                                                ESC [ 12 !
  611.  
  612.     Resets to the SkyPix standard palette, which is
  613.  
  614.          R   G   B  |       R   G   B  |       R   G   B  |       R   G   B
  615.     ----------------+------------------+------------------+----------------
  616.     0 = 00  00  00  |  4 = 00  15  01  |  8 = 00  11  06  | 12 = 00  00  15
  617.     1 = 01  01  15  |  5 = 03  10  15  |  9 = 00  13  13  | 13 = 07  00  15
  618.     2 = 13  13  13  |  6 = 15  15  02  | 10 = 00  10  15  | 14 = 12  00  14
  619.     3 = 15  00  00  |  7 = 12  00  14  | 11 = 00  07  12  | 15 = 12  00  08
  620.  
  621.     This would have the same effect as entering:
  622.     ESC [ 11 ; 0 ; 287 ; 3549 ; 3840 ; 241 ; 943 ; 4082 ; 3086 ; 182 ;
  623.           221 ; 175 ; 124 ; 15 ; 1807 ; 3086 ; 3080 !
  624.  
  625.     [See also Command #15 for info on the default palette]
  626.  
  627.         Next Command       'SkyPix Commands' Menu     Table of Contents  
  628.  
  629. Command #13
  630.  
  631. 13- FILLED ELLIPSE                               ESC [ 13 ; x ; y ; a ; b !
  632.  
  633.     (Same as standard Ellipse [Command #5], except this one is filled-in)
  634.  
  635.         Next Command       'SkyPix Commands' Menu     Table of Contents  
  636.  
  637. Command #14
  638.  
  639. 14- DELAY (PAUSE)                                            ESC [ 14 ; a !
  640.  
  641.     (A is a value in jiffies [60ths of a second])
  642.  
  643.         Next Command       'SkyPix Commands' Menu     Table of Contents  
  644.  
  645. Command #15
  646.  
  647. 15- SET COLOUR OF PEN A                                       ESC [ 15 ; a !
  648.  
  649.     Sets Pen A to colour a, where a is one of the following (assumes
  650.     default palette)
  651.  
  652.     0 = black         4 = bright green   8 = dark green    12 = dark blue 2
  653.     1 = dark blue 1   5 = med. blue 1    9 = cyan          13 = indigo
  654.     2 = white         6 = yellow        10 = med. blue 2   14 = violet 2
  655.     3 = bright red    7 = violet 1      11 = grey-blue     15 = magenta
  656.  
  657.         Next Command       'SkyPix Commands' Menu     Table of Contents  
  658.  
  659. Command #16
  660.  
  661. 16- CRC XMODEM TRANSFER                   ESC [ 16 ; m ; a ; b ! filename !
  662.  
  663.     Files will be sent to whichever directory BRU: is assigned.
  664.  
  665.     M (MODE)   1 = IFF Brush
  666.                2 = IFF Sound Sample
  667.                3 = FutureSound Sample
  668.               20 = General Purpose (saves to default dir.)
  669.  
  670.     A & B are the X and Y size of the IFF brush, if that is what is being
  671.     transmitted.
  672.  
  673.         Next Command       'SkyPix Commands' Menu     Table of Contents  
  674.  
  675. Command #17
  676.  
  677. 17- SELECT DISPLAY MODE                                      ESC [ 17 ; m !
  678.  
  679.     M is 1 for a 3-bitplane display (first 8 colours) or 2 for a 4-bitplane
  680.     display (all 16 colours allowed).  Note that if M is 1, then the second
  681.     8 colours (see Command #15) are disabled.
  682.  
  683.         Next Command       'SkyPix Commands' Menu     Table of Contents  
  684.  
  685. Command #18
  686.  
  687. 18- SET B PEN                                                ESC [ 18 ; b !
  688.  
  689.     (Sets background pen to colour B [see Command #15] - this is useful
  690.     for allowing ANSI commands to access more colours)
  691.  
  692.         Next Command       'SkyPix Commands' Menu     Table of Contents  
  693.  
  694. Command #19
  695.  
  696. 19- POSITION CURSOR                                      ESC [ 19 ; x ; y !
  697.  
  698.     (Moves text cursor to X,Y.  Does NOT affect the position of the
  699.     drawing pen)
  700.  
  701.     NOTE: This is not the same as ESC [ [n] ; [m] H.  In this case x and y
  702.     refer to pixels on the screen and not to rows and columns of text.
  703.  
  704.         Next Command       'SkyPix Commands' Menu     Table of Contents  
  705.  
  706. Command #21
  707.  
  708. 21- CONTROLLER RETURN                                ESC [ 21 ; c ; x ; y !
  709.  
  710.     (This is SENT from the terminal every time a controller is activated -
  711.     c=1 for left button mouse click at coord. x,y ;
  712.     c=2 for menu selection [x is the menu item #, y is ignored])
  713.  
  714.     SPINY'S NOTE: Due to a bug in JR-COMM 1.02 (which was fixed in 1.02a),
  715.     the ESC code is not sent with this command.  This should be taken into
  716.     consideration when adding mouse control to your own applications.
  717.  
  718.         Next Command       'SkyPix Commands' Menu     Table of Contents  
  719.  
  720. Command #22
  721.  
  722. 22- DEFINE A SKYPIX GADGET           ESC [ 22 ; n ; c ; x1 ; y1 ; x2 ; y2 !
  723.  
  724.     (N is the gadget # (1-20), C is the command # associated with it; X1,Y1
  725.     defines the top left corner and X2,Y2 the lower right.  The gadget
  726.     appears in the colour of Pen A [see Command #15])
  727.  
  728.         Next Section       'SkyPix Commands' Menu     Table of Contents  
  729.  
  730. IBM Graphics, or IBM ASCII's Better Half
  731.  
  732.         ####
  733.         ##
  734.        ##  ==============================================================
  735.       ##   B M   G R A P H I C S
  736.      ##  ================================================================
  737.     ##
  738.   ####
  739.  
  740. What is IBM Graphics?  Well, it's yet another throwback to the early IBM
  741. days (as the name indicates.)  All IBM's and compatibles have a special
  742. set of graphic characters built into the upper half of their ASCII table
  743. (128-255) as a way for text-only programmes to make boxes, windows, lines,
  744. and such.  Use of IBM Graphics found its way into terminals and BBS
  745. programmes much like ANSI did.
  746.  
  747. Of course, the Amiga with its ROM-based windows environment had no need for
  748. such primitive methods of generating graphics, but once Amiga terms started
  749. emulating IBM ANSI the need for emulating the IBM ASCII table arose as
  750. well.  Fortunately, all that was required was a special font containing all
  751. of the necessary characters.
  752.  
  753.  
  754. THE BBS END
  755. ===========
  756.  
  757. IBM Graphic characters can be generated easily in most ANSI editors using
  758. point-and-click gadgets, but they can also be generated the old-fashioned
  759. way by using special key sequences entered in a text editor or terminal
  760. which has an IBM Graphic font selected as its default.  An IFF-ILBM screen
  761. showing the most commonly-used IBM Graphic characters and their associated
  762. key sequences (assumes keymap 'usa0') has been included in this archive for
  763. your viewing pleasure.  You can display it either by clicking below or by
  764. using a viewer of your own devising.
  765.  
  766.  Click Here to View! 
  767.  
  768.  
  769. THE TERMINAL END
  770. ================
  771.  
  772. USING IBM GRAPHICS WITH ANSI: To enable IBM Graphics on any Amiga terminal,
  773. simply select an IBM Graphic font as the terminal's default text font.
  774. (a good IBM font has been included in this archive for those who don't have
  775. one.)  This information is generally entered in a requester somewhere in
  776. the terminal's configuration.
  777.  
  778. USING IBM GRAPHICS WITH SKYPIX: This requires a bit more work, but believe
  779. it or not, it's possible.  JR-COMM uses Pearl rather than Topaz-8 as its
  780. default font in SkyPix mode, so all you need to do is replace Pearl with
  781. an IBM Graphic font (such as the included CleanIBM.)  This is accomplished
  782. simply by copying the '8' file from the FONTS:CleanIBM/ subdirectory into
  783. the FONTS:Pearl/ subdirectory and running FixFonts (for good measure.)
  784.  
  785. NOTE: If your terminal has an option for 'High-Bit Stripping' or '8th-Bit
  786. Stripping', it must be turned off for IBM Graphics to function.
  787.  
  788.         Next Section                                Table of Contents  
  789.  
  790. Keeping Up With the Joneses
  791.  
  792.         ##  ##
  793.        ##  ##
  794.       ##  ## ============================================================
  795.      ######  O W   T O   G E T   S T A R T E D
  796.     ##  ## ==============================================================
  797.    ##  ##
  798.   ##  ##
  799.  
  800. You don't need an intricate understanding of the ANSI protocol to start
  801. making pretty pictures.  All you really need is a good ANSI editor.  An
  802. ANSI editor is something of a cross between a paint programme and a text
  803. editor.  A good one is designed to provide the user with an easy-to-use,
  804. intuition-based, DPaint-like format for 'drawing' ANSI screens and to do
  805. most of the nuts-and-bolts ANSI code generation automatically.  For
  806. instance, the user would simply click on a gadget to change text colours
  807. rather than entering the full ANSI code.
  808.  
  809. For non-animated ANSI screens, I would highly recommend using BBS-DRAW.
  810. It is extremely easy to use and is available through most Public Domain/
  811. Shareware archives.  I have used this programme for close to a year and
  812. have found that it generates code very nearly as 'smart' as my own with
  813. only a very few exceptions (plus working with it is considerably easier
  814. than pounding out ESC codes blindly in a text editor.)
  815.  
  816. I'd also highly recommend getting a copy of SKYPAINT.  SKYPAINT has the
  817. virtue of being the only ANSI editor equipped to interpret and generate
  818. standard SkyPix code.  It is also relatively versatile and easy to use and
  819. it implements most of the SkyPix commands automatically using a
  820. point-and-click gadget box.  At any rate, it's a GREAT DEAL faster than
  821. trying to enter them by hand and you can see the immediate results of each
  822. command as you create your file.
  823.  
  824. For ANSI animations (ANSI-Mations), I generally use DIANE (Digital
  825. Intelligence Animation Editor.)  This programme also uses an intuition-
  826. based interface, but it employs a clever device which treats each
  827. character placed on the screen as a separate 'frame' in the animation,
  828. allowing the user to move between 'frames,' add, and edit 'frames' much
  829. like a real animation program.  Backdrops for the entire animation can
  830. also be loaded.  The only drawback of DIANE is that it is limited to 8
  831. colours, but it is still my first choice.
  832.  
  833. For the other end of the line, I would recommend getting TERMINUS v2 or
  834. TERM v4 (Workbench 2 and above) for emulating IBM ANSI.  If you use
  835. TERM, I would also recommend using the (included) xemibm.library, since it
  836. seems to provide better ANSI compliance than TERM's built-in ANSI/VT-102
  837. routines.  For SkyPix, JR-COMM is still your best bet.  SKYTERM is
  838. another option, although (surprisingly enough, since Michael Cox wrote it)
  839. it does not conform as well to the SkyPix standard as JR-COMM.  Most
  840. SkyPix-supporting BBS's (mine included) are designed to work with JR-COMM
  841. rather than SKYTERM.
  842.  
  843.         Next Section                                Table of Contents  
  844.  
  845. Where to find TERM
  846.  
  847.                                  TERM v4.0
  848.                                  =========
  849.  
  850.      Copyright ©1990-93 by Olaf 'Olsen' Barthel, All Rights Reserved.
  851.  
  852.      TERM can be downloaded from most Public Domain/Shareware archives
  853.                        including wuarchive.wustl.edu
  854.  
  855.       It is freely-redistributable ShareWare with a suggested fee of
  856.     whatever the user feels is appropriate (it's a great programme, so
  857.                              don't be stingy!)
  858.  
  859.                 Its author can be reached through E-Mail at
  860.                            olsen@sourcery.han.de
  861.  
  862.                          or through Snail-Mail at
  863.  
  864.                              Brabeckstrasse 35
  865.                              D-30559 Hannover
  866.                         Federal Republic of Germany
  867.  
  868. Where to find TERMINUS and JR-COMM
  869.  
  870.                        TERMINUS v2.0d, JR-COMM 1.02a
  871.                        =============================
  872.  
  873.          Copyright ©1993 by John P. Radigan, All Rights Reserved.
  874.  
  875. The unregistered version of TERMINUS (with auto-dialer disabled) is freely-
  876.       redistributable and can be found in most PD/ShareWare archives
  877.   (including wuarchive.wustl.edu.)  The registered version can be ordered
  878.  through the author for a ShareWare fee of $40 or for a $10 upgrade fee if
  879.                     you are a registered JR-COMM user.
  880.  
  881.   The author can be contacted through E-Mail at the following addresses:
  882.  
  883.                           GENIE: JRADIGAN
  884.                      COMPUSERVE: 76545,201
  885.                             BIX: JRADIGAN
  886.                        INTERNET: jprad@faatcrl.faa.gov
  887.                     or bang path ...!rutgers!faatcrl!jprad
  888.  
  889.                          or through Snail-Mail at
  890.  
  891.                                  Dynalogic
  892.                                P.O. Box 444
  893.                            Ocean City, NJ  08226
  894.  
  895.                 TERMINUS and JR-COMM are also supported on
  896.  
  897.              Dynalogic Product Support BBS - FidoNet: 1:266/61
  898.                        (609) 398-7453 (24hrs/7days)
  899.                    3/12/24/96/14.4/16.8kbps HST/v.32bis
  900.  
  901. For SkyPix fans, I'm not sure whether Radigan still supports JR-COMM 1.02a
  902.  or even if it is still available from his BBS.  However, the unregistered
  903.     version of JR-COMM 1.02 or 1.02a (with the delay screen) is freely-
  904.       redistributable and can be found in many Amiga archives such as
  905.           wuarchive.wustl.edu and on most Amiga-supporting BBS's.
  906.  
  907.    JR-COMM 1.02a (unregistered) can also be found on the [A]miga [U]ser
  908.  [I]nternational Userdisk #6 (11/91) Magazine Disk, and my BBS carries the
  909.                    original archive as a free download.
  910.  
  911. Well, Now Comes the Bad News...
  912.  
  913. SKYPAINT
  914. ========
  915.  
  916. SKYPAINT might be a little difficult to obtain.  Unfortunately, Michael Cox
  917. limited its legal release to Registered SkyLine SysOps only (which is how I
  918. acquired the programme.)  The legalities are a bit vague since he
  919. abandonned the protocol, but I would assume that distributing SKYPAINT is
  920. still technically a no-no.
  921.  
  922. Perhaps someone more proficient in programming than I could design a
  923. freely-redistributable SkyPix editor and win my life-long friendship (hint
  924. hint.)
  925.  
  926. Where to find BBS-DRAW
  927.  
  928.                               BBS-DRAW v4.01
  929.                               ==============
  930.  
  931.          Copyright ©1991-92 Henrik Lindqvist, All Rights Reserved.
  932.  
  933.       BBS-DRAW is freely-redistributable ShareWare with a fee of $10.
  934.  
  935.               Its author can be reached through Snail-Mail at
  936.  
  937.                              Henrik Lindqvist
  938.                              Ullângergatan 19
  939.                               16228 Vällingby
  940.                              Stockholm, Sweden
  941.  
  942. Where to find DIANE
  943.  
  944.                    DIGITAL INTELLIGENCE ANIMATION EDITOR
  945.                    =====================================
  946.  
  947.                   Written by PER of Digital Intelligence
  948.         Copyright ©1991 Digital Intelligence, All Rights Reserved.
  949.  
  950.   DIAne is freely-redistributable ShareWare with a suggested fee of $15.
  951.  
  952.               Its author can be reached through Snail-Mail at
  953.  
  954.                                  P-E Raue
  955.                                 Bieslook 92
  956.                              1422 RS Uithoorn
  957.                               The Netherlands
  958.  
  959. Whereabouts I Can Be Found (On Odd Thursdays)
  960.  
  961.         ##   ##
  962.        ##   ##
  963.       ##   ## ===========================================================
  964.      ## # ##  H E R E   I   C A N   B E   R E A C H E D
  965.     ####### =============================================================
  966.    ### ###
  967.   ##   ##
  968.  
  969.         I can be reached through E-Mail at the following addresses:
  970.  
  971.                           drc76795@jetson.uh.edu
  972.                        or drc76795@tree.egr.uh.edu
  973.  
  974.                 I can also be reached through Snail-Mail at
  975.  
  976.                            The Flaming Hedgehog
  977.                                 P.O. Box 73
  978.                           Port Neches, TX  77651
  979.  
  980.       Alternately, you can reach me on my BBS (The Flaming Hedgehog),
  981.       Bartertown (1-409-898-4969), or Leisure World (1-713-859-0902).
  982.    If you'd like to see first-hand the capabilities of SkyPix and C-Net
  983.   (including full mouse-control), boot up JR-COMM 1.02 or 1.02a and dial
  984.  
  985.                               1-713-661-1930
  986.  
  987.          I hope this whole mess has been helpful in some tiny way.
  988.       ________                      _      __
  989.      / ______/      __             / \    / /
  990.     / /             \/            / _ \  / / Sr., Electrical Engineering
  991.    /  \_________  ______  __   __/ / \ \/ /\___  ___________  _____  _____
  992.    \____  / ___ \/ / __ \/ /  / / /   \  / ___ \/ ___/ _  _ \/ ___ \/ ___ \
  993.        / / /  / / / / / / /  / / /    / / /  / / /  / // // / /  / / /  / /
  994. ______/ /  \_/ / / / / /  \_/ / / ^ ^/ /  \_/ / /  / // // /  \_/ / /  / /
  995. \______/\  ___/\/\/  \/\___  /\/ \// \/\_____/\/   \/ \/ \/\___  /\/   \/
  996.          \ \______  ______/ /   --  /^                         \/
  997.           \______/  \______/     mm(/ --DINSDALE!
  998.  
  999.                              Table of Contents 
  1000.